 /***************************************************************************
 *   Copyright (C) 2010 by ZhangShine , All Rights Reserved                                  
 *   zhangshine0125@gmail.com                                              
 *                                                                         
 *   This program is free software; you can redistribute it and/or modify  
 *   it under the terms of the GNU General Public License as published by  
 *   the Free Software Foundation; either version 2 of the License, or     
 *   (at your option) any later version.                                   
 *                                                                         
 *   This program is distributed in the hope that it will be useful,       
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         
 *   GNU General Public License for more details.                          
 *                                                                         
 *   You should have received a copy of the GNU General Public License     
 *   along with this program; if not, write to the                         
 *   Free Software Foundation, Inc.,                                       
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             
 ***************************************************************************/
#include <QtGui/QApplication>
#include <QtCore>
#include <QTextCodec>
#include "mainwindow.h"
#include "configuration.h"
#include "account.h"
#include "logindialog.h"
#include "QSplashScreen"
#include "windows.h"

#define ms 1000

int main(int argc, char *argv[])
{
    QApplication lisa(argc, argv);
    QApplication::setOrganizationName("Tab, School of Software Engineering, Huazhong Univ. of Sci. & Tech.");
    QApplication::setApplicationName("SocialReady!");
    QApplication::setOrganizationDomain("www.wangxiong.co.cc");
    QApplication::addLibraryPath(QDir::home().absolutePath());

    /* Set Software Encoding */
    QTextCodec *encoding = QTextCodec::codecForName("utf-8");
    QTextCodec::setCodecForTr(encoding);
    QTextCodec::setCodecForLocale(encoding);
    QTextCodec::setCodecForCStrings(encoding);
    
   /* Splash Screen :D & Was nb le r.*/
    QSplashScreen *splash = new QSplashScreen;
    splash->setPixmap(QPixmap(":/images/splash.png"));
    splash->show();


    #ifdef Q_OS_WIN
        Sleep(uint(ms));
    #else
        struct timespec ts = { ms / 1000, (ms % 1000) * 1000 * 1000 };
        nanosleep(&ts, NULL);
    #endif



    Account *account = new Account();
    //Configuration* conf = Configuration::getInstance();


    LoginDialog *loginDialog = new LoginDialog(account);

    splash->finish(loginDialog);
    delete splash;

    if(loginDialog->exec()==QDialog::Accepted)
    {
        QApplication::setQuitOnLastWindowClosed(false);
        MainWindow w(account);
        w.show();
        return lisa.exec();
    }   
    return 0;/* exit */
}
